home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-05-21 | 41.0 KB | 1,179 lines | [TEXT/MWPR] |
- KNOWN BUGS AND RESTRICTONS IN SCRIPTX VERSION 1.5
-
- This document contains up-to-date information about the known bugs
- and restrictions in Version 1.5 of ScriptX.
-
- These restrictions are divided into components which are listed in
- alphabetical order. Each bug report contains the bug number,
- a description, and possibly a workaround.
-
- The components included are as follows:
-
- 2D Graphics Loadables - Transitions
- Animation Loadables - xcmd
- Clocks Loader
- Collections Memory Management
- Config - Audio Modules
- Config - General Numerics
- Config - Video Object Store
- Controllers Object System Kernel
- Document Templates Players - Interleaved
- Environment Players - Video
- Events Presenters
- Exceptions Printing
- Files - DirReps Spaces
- Importers - ART Streams
- Importers - DIB Tethered Editors
- Importers - General Text & Fonts
- Importers - PICT Threads
- Importers - QuickTime Title Management
- Importers - RTF Tools - Browsers
- Importers - WAVE Tools - Debug Tools
- KMP App Tools - Widgets
- Language Transitions
- Language - General User Interface
- Language - ScriptX Visual Memory
-
-
- ______________________________________________________
-
- 2D Graphics
-
- 3458 Macintosh only: When the remapOnDraw instance variable
- of a bitmap is set to true and the bitmap is rendered, the
- bitmap's colormap does not get remapped to the colormap of
- the surface.
-
- 3525 Windows only: In rotating a bitmap, it may distort as well as
- rotate.
-
- 3628 The vertical display coordinate origins are not compatible
- across platforms. For example, when you specify a y-position
- of 40 on the Macintosh, your window is right below the
- system menu bar. On Windows, there is a sizable gap.
-
- 3703 The arc method does not draw a perfect arc. The radius is
- slightly different at different points.
-
- 3704 When drawing a complete circle, arc and arcn produce
- different outputs. arc mistakenly produces a circle that is
- completely closed, while arcn produces a circle with a slight
- opening, as is expected.
-
- 3709 Setting the brush lineWidth to 0 does not draw using the
- smallest line width possible, as it states in Class Reference.
-
- 3714 Macintosh only: In performing a transform on a bitmap, and
- appending it to a LibraryContainer, the color of the matte
- changes, while the color value of the matteColor instance
- variable does not change.
-
- 3758 Different results are produced depending on when a
- transformation matrix is applied to a BitmapSurface. If you
- apply theMatrix when you fill the bitmapsurface and then
- call transform with an identityMatrix, the resulting image
- shows some banding. However, if you apply the
- identityMatrix when you fill the bitmapsurface and then
- transform it with theMatrix, the image looks fine.
- Workaround: Apply the identityMatrix when you fill
- the bitmapsurface and then transform it with theMatrix.
-
- 3850 GroupPresenters are not stroked correctly. For example,
- bounding boxes are stroked, not the union of their boundaries.
-
- 3869 Animating a Line object fills memory with Line objects that
- are not collected, thus generating garbage.
- Workaround: use a Path object instead of a line.
-
- 3876 White areas may be shown when a bitmap is rotated in some
- situations.
-
- 3890 Rotating a bitmap gradually degrades the image.
- Workaround: Instead of rotating an image, rotate a
- matrix and apply it to the original image. The image does
- not degrade.
-
- 3900 TwoDMultiPresenter clips at its bounding box (bbox) rather
- than its boundary.
-
- 3923 The onBoundary method for Stencil returns true only when
- the coordinates passed represent the corner of the bounding
- box of the Stencil.
-
- 3927 The remapOnSet instance variable defined by Bitmap is a
- no-op on both Macintosh and Windows. In addition, using the
- colormap: keyword while importing a bitmap does not work
- on Windows, although it does work on the Macintosh.
-
- Workaround: Write to a bitmap surface at runtime to
- set the colormap dynamically, and then convert the result
- back to a bitmap.
-
- 3952 Windows only: GDI resources are not freed when you using a
- user defined pattern for a brush object.
-
- 3975 TwoDSpace uses the rectangular bbounding base (bbase) as its
- clipping region instead of using its boundary as a clippings
- region. The result is that if you add a presenter such as a
- TwoDShape to a space whose boundary is, for example, an
- oval, you see that the presenter is clipped by the rectangluar
- area surrounding the oval, instead of by the oval.
-
- 4105 If a TwoDShape object uses a bitmap stored in a library
- container, with the invisibleColor of the bitmap set and the
- shape appended to a window stored in a title Container, the
- invisibleColor of the bitmap fails. The shape appears in the
- window with its rectangular boundary.
-
- 4178 Windows only: One gray color in the default color palette
- appears yellow.
-
- 4198 Bitmaps are skewed or rotated 45 degrees or so when
- displayed in Win95. The bitmap of values, such as 2, 6, 10, where
- the value is divisible by 2 but not by 4, will appear skewed.
-
- 4199 Windows only: Shapes created from paths can be rotated but
- shapes created from imported bitmaps disappear when
- rotated.
-
- 4200 Windows only: Setting the invisibe color for bitmap does
- not work on Windows. It works on the Macintosh.
- _______________________________________________________
-
- Animation
-
- 3247 Windows only: If an animation is temporarily interrupted,
- when the animation continues, the animation moves in fast
- motion as if it were trying to catch up.
-
- 3474 ActionListPlayer does not play in reverse.
-
- 3534 In the TimeAction class, the time instance variable cannot be
- set after the action has been created. The time action will
- not occur.
-
- Workaround: Add the keyword time when creating the
- TimeAction instance, setting its value to the end of the list.
- For example: global t10 := new TimeAction targetNum:0
- destTime:5 time:10.
- ___________________________________________________________
-
- Clocks
-
- 3617 Calls to set the value of the authorData and target instance
- variables on callbacks are ignored. Therefore, a callback
- cannot be easily modified once it has been created.
-
- 3670 New clocks that are added to a paused title are not paused.
-
- 4083 Referencing the date instance variable of theCalendarClock
- triggers periodic callbacks on that clock, if you addded any
- to it.
-
- _____________________________________________________________
-
- Collections
-
- 3050 The expression for i in 1 to 6 collect by append i returns the
- NoMethod exception.
-
- Workaround: This is not actually a bug. Only
- collection methods that return a collection are suppsed to be
- in the by cause. Do not use append; use the global function
- appendReturningSelf. See the discussion of the for expression
- in the ScriptX Language Guide and also the definition of the
- appendReturningSelf in the global function section of the
- Class Reference. You can also use an anonymous function to
- create a wrapper for append that returns the collection
- rather than the appended key.
-
- 3072 Calling seekFromStart beyond End of File (EOF) on
- SequenceIterator reports an exception.
-
- 3075 Nearly all iterators return incorrect results for
- (seekFromEnd iter 0).
-
- 3107 The method stringOf on ByteString, String, Name, and
- Exception is available from the scripter, although it is not
- documented.
-
- 3327 The remainder method on KeyedLinkedListIterator returns a
- collection of value:value pairs rather than a collection of
- key:value pairs.
-
- 3395 When coercing a string to NameClass, the case may change
- unexpectedly.
-
- Workaround: This is not a bug. NameClass objects are
- not case sensitive.
-
- 3476 In collections, when defining a range using floats, and
- attempting to increment by a fraction, an incorrect value is
- returned.
-
- 3513 The classes Single, Pair, Triple, and Quad do not
- specialize the addToContents method, which is hidden from the
- scripter. As a result, it is not possible to use the object syntax
- in the ScriptX language to set the values for members of these
- bounded collections.
-
- 3592 The keyword initialSize in ByteString is off by one less than
- specified.
-
- 3711 ScriptX crashes when creating a new instance of a subclass of
- Sequence.
-
- 4031 For IndirectCollection, deleteKeyOne calls objectRemoved
- with the key, not the value, and this causes objectRemoved to
- be called with incorrect arguments.
-
-
- 4192 The eq operator returns a different value from equal.
- ____________________________________________________________
-
- Config - Audio
-
- 3420 PS/2 only: ScriptX causes a fatal system crash if system
- sounds are enabled and a sound is played.
-
- Workaround: Turn off system sounds.
-
- 3832 IBM microchannel M-Audio card fails to produce sound.
-
- _____________________________________________________________
-
- Config - General
-
- 3974 Windows only: Cannot launch ScriptX or the KMP from CD-
- ROM on an IBM ThinkPad.
- _______________________________________________________________
-
- Config - Video
-
- 3273 The QVision video card may experience poor performance.
-
- ____________________________________________________
-
- Controllers
-
- 3769 You are not prevented from creating instances of many
- abstract classes, even though those instances are incomplete
- and therefore useless.
-
- 4189 If an object is controlled by a bounce controller, the object goes
- past an edge it encounters.
-
- ____________________________________________________
-
- Document Templates
-
- 2965 localEqual fails when comparing two Page objects of the same
- value.
-
- 3003 Page objects do not compare correctly. equal returns false
- when it should return true. The same applies to PageElement
- and PageTemplate.
-
- 3005 A PageElement object acts as a proxy for its target. This can
- result in seemingly illogical behavior. For example,
- isAKindOf on an instance of PageElement returns true for
- TextPresenter, if a TextPresenter object is the target of the
- PageElement object, while TextPresenter does not show up in
- the list returned from getSupers on the PageElement class.
-
- 4197 System crashes when you try to add custom instance variables
- in the definition of a PageElement object.
-
- ____________________________________________________
-
- Environment
-
- 3182 Windows only: ScriptX fails to run on the Japanese version of
- Windows 3.1
-
- 3200 When a script has been filed-in without -<<< ->>>
-
- requiring one to hit the Return button after each line
-
- 3204 The default state for a newly created MDTextWindow is
- visible on Windows and hidden on the Macintosh.
-
- 3509 Windows only: When trying to open a file that does not have
- an extension, ScriptX will not read in the file.
-
- 3598 Windows only: When the splash screen initially comes up
- there is a thick blue border around it that does not exist on
- the Macintosh.
-
- 3961 Windows Only: Command-delete in Listener does not delete
- all text from cursor to end.
-
- 3985 On the Macintosh, copying a new version of ScriptX onto your
- local drive sometimes causes drag-and-drop to fail.
-
- Workaround: Rebuild the desktop.
-
- 4001 ScriptX will not boot on PowerMac without installing
- QuickTime.
-
- Workaround: Install QuickTime to boot ScriptX on
- PowerMac.
-
- 4201 Command line arguments to ScriptX must now include a fully
- qualified path.
-
- Workaround: Install QuickTime to boot ScriptX on PowerMac.
- _________________________________________________________________
-
- Events
-
- 3622 Macintosh only: On compact Macs without a numeric keypad,
- like a PowerBook, the Enter key is not mapped.
-
- 4005 hasUserFocus on the Window class can be set to true before
- the window is visible, which may prevent forceFocus from
- working.
-
- 4122 When executing a startupAction that calls signal on an event
- that has been stored in a title container, an exception will
- occur.
-
- __________________________________________________________________
-
- Exceptions
-
- 3024 If the WIDGETS.SXL file is missing but tools are being
- loaded, a dialog will notify you of a problem, offering Quit
- and Continue options. If Continue is chosen, ScriptX crashes
- with a bus error.
-
- Workaround: If this dialog appears, choose Quit and
- load tools with the WIDGETS.SXL file in place.
-
- ___________________________________________________________________
-
- Files - DirReps
-
- 3219 Windows only: Creating a file with no given extension
- reports an error.
-
- Workaround: Provide an extension when creating a
- file.
-
- 3257 Macintosh only: The fixNameForOS method returns bad
- strings when passed a long filename.
-
- 3554 Macintosh only: The createFile method should throw an
- exception when creating a file on a read-only diskette, but it
- does not. A string of the filename is returned, even when the
- file is not created on the diskette.
-
- 4067 Open title will fail on files on a network drive.
-
- ____________________________________________________
-
- Importers - ART
-
- 3903 Setting mattecolor and invisiblecolor on KIC compressed
- images might not change the color.
-
- ____________________________________________________
-
- Importers - DIB
-
- 3084 Macintosh only: When you import a 24-bit DIB using the DIB
- importer with @compressedBitmap as the output media
- type, the results are incorrect.
-
- 3560 Importing the colormap of a 24-bit uncompressed BMP file
- returns an error.
-
- 4143 Macintosh only: Importing a 24-bit uncompressed bitmap
- does not work.
-
- ____________________________________________________
-
- Importers - General
-
- 3759 The QuickTime-to-Bitmap importer fails to import for a
- QuickTime movie that has all key frames. It states, Frame
- beyond the end of the movie.
-
- ____________________________________________________
-
- Importers - PICT
-
- 3956 Windows only: importing a pict file twice without resetting
- the cursor on the stream generates a read error message.
-
- 4142 Windows only: pict importer makes system hang when
- importing a 24-bit pict.
-
- ____________________________________________________
-
- Importers - QuickTime
-
- 3058 When presented with a movie that has multiple sound
- descriptions, the QuickTime importer crashes with a bus
- errors.
-
- ____________________________________________________
-
- Importers - RTF
-
- 3393 Importing an RTF file that has a header or a footer, and
- displaying the imported text in ScriptX, causes ScriptX to
- freeze. This may require rebooting.
-
- Workaround: Do not import an RTF file that contains a
- header or a footer for display in ScriptX. This bug may be
- fixed.
-
- ____________________________________________________
-
- Importers - WAVE
-
- 3864 Imported 44Khz 16-bit WAVE audio plays at too low a pitch
- on the Macintosh.
-
- Workaround: Change the DigitalAudioPlayer pitch
- instance variable from 60 to 84.
-
- __________________________________________________________________
-
- KMP App
-
- 3799 On the Macintosh, file type and file extension are
- determined by Macintosh-specific elements of a file, with
- creator fields that cannot be included in cross-platform
- distributions.
-
- Workaround: Macintosh only: Allow files with the
- proper file extensions (.sxt, .sxl, .sxa) to be opened by the
- Kaleida Media Player even if the file type and creator
- fields are not set correctly.
-
- ___________________________________________________________________
-
- Language
-
- 2996 The following classes do not behave correctly with copy on a
- subclass:
- Bitmap, BitmapCompressionInfo, Brush, ClippedStencil,
- ColorMap, Line, MdByteString, Oval, Path, RGBColor, Rect, Region,
- RoundRect, StringConstant, TextPresenter, VideoFrameDesc,
- Window.
-
- Workaround: See the discussion of copying objects in the
- "Object System Kernel" chapter of the Componenets Guide.
-
- 3039 getLowercase "\<10000>" causes ScriptX to crash with a
- fatal error.
-
- Workaround: Use no more than 4 digits with
- getLowercase "\<NNNN>".
-
- 3046 Calling any of the following on instances can cause crashes:
- init, afterInit, afterLoading, initCopy, inflate.
-
- Workaround: Do not do it. These methods are visible
- so that they can be specialized. They are not meant to be
- called from the scripter.
-
- 3052 localEqual compares two collections, item by item, to
- determine if their members are locally equal. If collections
- contain other collections embedded within, then localEqual
- causes ScriptX to crash.
-
- 3102 In the Browser, when browsing a core class, the list of
- methods does not match the result of getDirectMethods.
-
- 3539 In the loadable transitions, when a loadable class is
- referenced prior to having loaded the class, it is not
- recognized after the class is loaded.
-
- Workaround: Always make sure loadable transtions
- are loaded before referencing them.
-
- 3673 Variable modifier initializer does not function properly.
-
- Workaround: Although defined in the ScriptX syntax,
- scripted initializers have not yet been implemented in
- version 1.5. Implement initialization by specializing
- afterLoading.
-
- 3692 ScriptX crashes without reporting an exception when trying
- to redefine a constant.
-
- __________________________________________________________
-
- Language - ScriptX
-
- 3782 A syntax error is reported if a line break occurs immediately
- after a function fnName definition begins. However, the
- parser does not report an error if the line break occurs after
- function fnName firstArg or function fnName ->.
-
- Workaround: Do not break a line after the name in a
- function definition.
-
- 4182 A small memory leak might occur when coercing arguments
- passed into a function into string objects and then coercing
- those string objects into NameClass objects.
-
- Workaround: In this situation, use the new syntax to
- create the NameClass object, rather than coercing the string
- object into a NameClass object.
-
- ___________________________________________________________
-
- Loadables - General
-
- 4208 If you create a subclass of a loadable class,
- such as QuickTimePlayer or one of the widget classes,
- such as TextButton, that subclass will not be stored.
- Therefore, at runtime it will not be present.
-
- Workaround: Subclass the loadable class at runtime,
- which you can do in the startupAction method.
-
- ___________________________________________________________
-
- Loadables - Transitions
-
- 3924 Dissolve transitions do not work properly.
-
- ___________________________________________________________
-
- Loadables - xcmd
-
- 3918 Loadable XCMD is not functional. Attempting to load the
- XCMD reports various LoaderHelper errors.
-
- ___________________________________________________________
-
- Loader
-
- 3643 relinquish method does not call exit within a function in a
- loadable unit.
-
- ___________________________________________________________
-
- Memory Management
-
- 3694 ScriptX crashes when it is set to start up with insufficient
- memory.
-
- ___________________________________________________________
-
- Modules
-
- 3669 When multiple modules are stored in a single title container,
- the modules must be explicitly de-referenced via the load
- method at startup time. Simply setting a variable equal to
- the module’s proxy is not enough to load all defined
- variables.
-
- 3718 When a module is redefined, renames does not work properly.
-
- 4004 Redefining a module variable after storing it to a container,
- then reloading the objects, causes ScriptX to crash.
-
- ___________________________________________________________
-
- Numerics
-
- 3612 Matrix operations lead to a value of 1 (ImmediateInteger) on
- Windows but 1.0000 (Float) on Macintosh. Note that this can
- cause cross-platform compatibility problems.
-
- 3618 A date earlier than 1970 cannot be entered.
-
- Workaround: Enter a date after 1970.
-
- 3654 posInf cannot be used as the upper boundary in a
- NumberRange object.
-
- 3802 When making a copy of a Date instance, the same Date object
- is returned.
-
- 3868 Allocating objects during a performance critical animation
- may reduce frame rate.
-
- 4019 A computation on an undefined number returns an invalid
- number.
-
- 4021 Windows only: When attempting to initialize a date with
- the day set to anything greater than 28, the hour is set to 1
- hour less than the actual hour.
-
- 4089 The addMonths instance method malfunctions.
-
- Workaround: Use alternate method to calculate date.
-
- ___________________________________________________________
-
- Object Store
-
- 2982 The directory instance variable of a library is not set when
- the library is opened implicitly by a title.
-
- 3144 LibraryContainers objects and subclasses do not call
- preStartupAction before trying to load the libraries on which
- they depend.
-
- 3544 Windows only: In Tools, placing the sxd folder in the Tools
- folder will cause ScriptX to crash on launch.
-
- Workaround: Place the widget library in theStartDir
- folder (outside the tools folder). When the widget library is
- in the tools folder, it is loaded once by the tools loader after
- being loaded implicilty by a tool.
-
- 3734 If a container is initially opened read-only, then it cannot be
- updated during that ScriptX session, even if you close the
- container and re-open it in Update mode.
-
- 3795 Using update myContainer creates containers that are 45MB
- on the PC platform and 13 MB on the Macintosh platform,
- instead of 1MB in size.
-
- Workaround: Since update myContainer is writing
- everything to the storage system, do not use update
- myContainer in a loop where items are added to the target
- collection.
-
- 3885 Caution: If you have a container (A) that uses a object1 that
- is stored in another container (B), but is not listed in container
- B's targetCollection instance variable, when a new class is
- added to container B in front of object1, container A's reference
- to object1 may be incorrect.
-
- 3986 Containers opened in default read-only mode are sometimes
- updated on close.
-
- 3990 ScriptX crashes upon opening a library container in @update
- mode and adding a new object to the library container.
-
- 4207 Windows only: A check for whether a container is already
- open assumes a case-sensitive uppercase filename. As a
- result, a container is opened twice, causing a <module> cannot
- be redefined error. On both Windows and Macintosh, file
- Open is case-insensitive, so there is no method to detect in
- which case a file might have been originally opened. This is
- a problem for cross-container applications.
-
- Workaround: Type container filenames in lowercase
- before comparing or perform a case insensitive container name
- comparison.
-
- ___________________________________________________________
-
- Object System Kernel
-
- 3286 Recompiling a class that has instances does not properly
- report an exception on either the Macintosh or Windows
- platform. Both respond differently and incorrectly.
-
- 3305 Class and instance variables declared transient are returned
- from the object store as non-objects, when attempting to
- retrieve them from a container.
-
- Workaround: Since scupled initializer functions have
- not been implemented yet in the current version of ScriptX,
- specialize afterLoading to set the initial value of a transient
- variable.
-
- 3456 Using map with the global function eq returns non-objects.
-
- 3457 Using map and the numerics method sum reports an exception.
-
- 3520 The allInstances generic function can consume a lot of memory,
- if called repeatedly.
-
- 3787 The garbagecollect() function causes ScriptX to crash upon
- freeing a specialized class.
-
- Workaround: It is not recommended to override deflate
- and inflateInstance class methods.
-
- ___________________________________________________________
-
- Players -Interleaved
-
- 4214 If SpeedDoubler is installed and Speed Access, a component
- of SpeedDoubler that does better CD caching, is running,
- movie playback performance off the CD is sub-standard.
-
- ___________________________________________________________
-
- Players - Video
-
- 3049 Invisible color instance variable does not work when a palette
- changes in a video player, even if the palette is returned.
-
- to the same mode.
-
- 3057 You cannot interrupt or type in the Listener while playing
- video from a compact disc (CD) at negative rates, even after
- the video finishes.
-
- 3421 When you change the target of a movie player, the movie
- player does not stop its current slave clocks. The previous
- movie keeps playing and you may get a long delay when you
- start playing a new movie.
-
- Workaround: Stop the movie player before changing
- its target.
-
- 3492 Macintosh only: The audio goes away when the window
- containing a QuickTime player is hidden.
-
- 3514 Windows only: When the window containing a VFWPlayer
- (Video for Windows player) is shown, it gets shifted 2-3
- pixels up and to the left.
-
- ___________________________________________________________
-
- Presenters
-
- 3322 Transform matrices and direct presenters do not interact
- correctly. The boundary is ignored when rendering direct
- presenters.
-
- 3414 When a TwoDMultipresenter object is transformed, such as
- scaled or rotated, its subpresenters do not get transformed.
-
- Workaround: Explicitly transform the subpresenters of
- the TwoDMultiPresenter object. Make sure to take the origin
- of each subpresenter into account.
-
- 4165 A newly created window displays garbage at the bottom, if
- the width is set before setting a height that is over 400.
-
- Workaround: Set width after height when height is
- over 400.
-
- ___________________________________________________________
-
- Printing
-
- 3700 he paperBoundary for an instance of PrinterSpace or
- PrinterSurface can be changed, but it should not be able to be
- changed. Also, the boundary for PrinterSurface can be
- changed, but it should not be able to be altered.
-
- Workaround: Do not change the paperBoundary for an
- instance of PrinterSpace or PrinterSurface. Also, do not
- change the boundary for PrinterSurface.
-
- 3701 If the fill color is set to whiteColor, and a selected PostScript
- printer is set to black-and-white mode, a rectangle prints
- solid black.
-
- 4103 Windows only: Printing a DocTemplate application returns
- an error. When printing a large region, GDI memory may run
- low and not print.
-
- ___________________________________________________________
-
- Spaces
-
- 3471 When an object is appended to a GroupPresenter, its
- rectangular bounding box is stroked, rather than the object
- itself.
-
- 3671 If a space's clock is running while the space is being saved to
- the object store, the objects contained by the space may be
- saved with inconsistent state.
-
- Workaround: Pause and restore the spaces so that
- items are saved and restored away in a state you expect.
-
- 3685 If you open an accessory or title container that does not create
- windows, ScriptX incorrectly clears the hasUserFocus of the
- existing top level title container window, unless focus has
- been explicitly switched away from and back to that top
- level window. When hasUserFocus has been cleared, it is
- impossible for an accessory to discover which title container
- has user focus.
-
- 3748 Hiding a direct presenter does not cause it to disappear from
- the window.
- Workaround: Set the direct presenter instance variable to false
- before hiding the presenter.
-
- 3791 Macintosh Only: PaletteWindow is unable to detect mouse-
- down events in a 15 x 15 pixel square in the lower right-hand
- corner.
-
- 3993 Calling appendNew on an instance of TwoDMultipresenter
- reports an exception.
-
- 4174 findAllAtPoint, and perhaps the related
- TwoDMultiPresenter methods, do not work. The
- findAllAtPoint method appears to be checking for an overlap
- between the query point and the local boundary of the
- presenters, instead of checking the boundary of the presenters
- after the globalTransform is applied.
-
- ___________________________________________________________
-
- Streams
-
- 3161 In the ByteStream class, the pipePartial method is missing
- the last character of bytestrings.
-
- 3196 A copy of a mdByteString is always growable, even when the
- original is not.
-
- 4086 frameRate iv in VideoStream is supposed to be read-only.
- Currently you can assign a value to it without getting an
- exception.
-
- ___________________________________________________________
-
- Tethered Editors
-
- 4144 When executing Send Script in BBEdit version 3.5, hitting
- Cancel in the "Select the ScriptX app" box can cause BBEdit
- to crash.
- ___________________________________________________________
-
- Text & Fonts
-
- 2976 Setting a text's selection to a backward range (10 to 6 by -1)
- draws the highlighting incorrectly. The range should be
- selected with the cursor at the beginning. When dragging to
- select text, the cursor stays at the end of the selection. It
- should follow the mouse and end up at the position where the
- mouse is released.
-
- 3293 Platform-specific characters prevent transfer from the
- system clipboard. There is no way to get at the system
- clipboard as anything other than Text — as a byte array, for
- example.
-
- 3515 When a title is built on the Macintosh and moved to
- Windows, the Courier New and Wingdings fonts do not work.
- If rebuilt on Windows, all fonts work correctly.
-
- 3523 When the target of a TextPresenter extends beyond the width
- of the presenter, the entire word is not shown.
-
- Workaround: Increase width of textPresenter or reduce
- length of word in target.
-
- 3533 Importing very large text causes the thread to overflow its
- stack.
-
- Workaround: There is a limitation of about 100
- operands in a single expression. So, for example, having over
- a hundred strings joined together with the plus operator does
- not work. You can avoid this problem by just having one
- string. In ScriptX, a string can extend over the end of a line
- and be as long as you like.
-
- 3541 TextPresenter does not take the inset of the text into account
- when detecting a hot region for performing actions. The
- active mouse area is off by the inset amount.
-
- 3687 Macintosh only: Font type and size of the menu bar and
- window title bars can be mistakenly changed by a sequence of
- commands issued from a script or in the listener window,
- when theTitleContainer.systemMenuBar is hidden.
-
- 3848 setAttr does not set the color correctly when the end of the
- range is not at the end of the text.
-
- 3867 Text presenters generate garbage when drawing.
-
- 3873 The event interest instance variables of TextEdit are not
- accessible through ScriptX and enabledSetter is not specialized
- to remove and add events. If you attempt to run through the
- eventInterests instance variables to implement TextEdit disabling,
- and if the TextEdit had focus in its window, it will re-add the
- keyInterest event when focus is restored to the window.
-
- Workaround: Use with extreme caution, since this relies
- on information that is subject to change. Disable a
- TextEdit box so that it does not receive KeyboardDownEvents.
-
- 3914 Coercing a NameClass object to a string constant throws an
- error. In addition, coercing a NameClass object to a Text
- object mistakenly includes the @ sign.
-
- Workaround: Coerce the NameClass object to a String
- object adn the to a StringConstant object or a Text object.
-
- 4117 Text color changes to black from white when a window is
- moved to a second monitor that is set to a different color
- resolution.
-
- 4193 If you call calculate on a text presenter
- that has an empty string as its target, it throws an exception
- "No undefined instance method for Substrate:UndefinedClass."
-
- Workaround: Assign any string (such as a space) with a length
- greater than zero to the target. Then calculate will work.
-
- ___________________________________________________________
-
- Threads
-
- 3451 Calling threadProtect on threads whose staus is @inactive or
- @done does not change the protection level of the thread.
-
- 3589 A quit query function must run in a separate thread. It is does
- not work to present a dialog box asking Okay to quit? Y/N.
- After the box appears, one must block the thread to prevent
- the quit query function from continuing, to allow the user to
- press Yes or No. But in blocking the current thread, all events
- are blocked, because the quit query function runs in the thread
- labeled EventDispatchQueue—it should instead run in
- another thread. It works to type quit() in the Listener.
- However, if you type Command-Q or choose Quit from the
- File menu, the dialog box appears but the pushbuttons do not
- respond to user input.
-
- Workaround: Create a separate thread to run the quit
- query function.
-
- ___________________________________________________________
-
- Title Management
-
- 3269 Opening a LibraryContainer instance is inconsistent between
- the open method and opening it from the file menu. Opening
- from the file menu creates a new DirRep representing the full
- path to the container file, and assigns this DirRep to the
- directory instance variable. This DirRep is also appended to
- theContainerSearchList global variable. Opening with the
- open method does not generate a new DirRep, nor does it
- append a DirRep to theContainerSearchList.
-
- 3300 ScriptX retains a reference via filename for each created or
- opened LibraryContainer instance. A new LibraryContainer
- instance cannot be created with the existing filename until
- after ScriptX quits.
-
- Workaround: After building library containers, quit
- and restart ScriptX.
-
- 3301 If you open a LibraryContainer more than once during
- a ScriptX session, terminateAction is called only the first
- time you close it.
-
- Workaround: Do not use terminateAction; try to write your code
- to not rely on terminateAction.
-
- 3506 If a title container is opened, and then closed using
- CloseTitle from the File menu, and then re-opened from the
- File menu, the file will be reported as "In use." The file
- cannot be opened a second time from the File menu.
-
- Workaround: Titles can be opened and closed as often
- as you want programmatically.
-
- 3626 The directory instance variable is not set at
- preStartUpAction, where it is needed for adding paths to
- theContainerSearchList.
-
- 3722 Extra windows show up in the Scratch title container
- windows instance variable. This happens because placing a
- presenter in a storage container saves the entire presentation
- hierarchy it is in.
-
- 3839 ScriptX does not keep track of the pointer (cursor)
- when you switch between titles. In other words, if title a is
- running and you change the cursor to wait, you switch to title b,
- but the cursor stays wait even though b's cursor should be a pointer.
-
- 3855 Setting the colormap of a Window object has no effect if the
- window is hidden.
-
- 4006 The version instance variable of a LibraryContainer instance
- returns a non-object, if left unassigned. It should return
- undefined.
-
- 4092 Classes returned by the getAccessory method of the accessory
- container are not getting loaded.
-
- 4110 The Systemmenubar is inconsistent across platforms.
- On the Macintosh the Systemmenu comes up with Print disabled,
- which is correct, while on Windows it is enabled.
-
- 4112 The topPlayers instance variable is not being set after a title
- container is opened.
-
- 4113 A window created during the startupAction of a title
- container has its title instance variable set to
- theScratchTitle instead of to the title container that created
- it.
-
- Workaround: When creating a window in the startup
- action, set the window's title keyword to the appropriate
- title container.
-
- 4185 Do not set the height of a Window object by using the
- boundary instance variable.
-
- Workaround: Use the height instance variable
- instead.
-
- 4205 theOpenContainers displays duplicate containers if open
- was called on the same container twice.
- ___________________________________________________________
-
- Tools - Debug Tools
-
- 4132 If you try to Step Into or Step Over calls to waitTime, the
- Debugger often takes control and does not give it back. You
- have to quit ScriptX.
-
- 4163 When specifying a breakpoint for a function in a module, you
- must specify the module name—modulename: fn or
- classname^methodname.
-
- 4168 The browser menu is loaded twice. Selecting browser menu
- item ob-1 in ScriptX tools menu will create two identical
- browser menus.
-
- ___________________________________________________________
-
- Tools - Widgets
-
- 4073 In PopupMenu widgets, a value of 0 or "nothing selected"
- cannot be specified. If you mouseUp and the mouse is not over
- the menu area, no selection is indicated. The last
- highlighted item, however, is the value returned, regardless
- of whether the mouseUp occurred inside or outside the menu.
-
- 4135 If you create a scrollListBox with a height value too small to
- fit in the scroll bar, the scroll box fits only partially in
- between the up and down arrows. Thus, when scrolling up and
- down, the scroll box overlaps the up or down arrow,
- depending on the position in the list box.
-
- 4136 If text is longer than the size of the text area in popupMenu,
- the text overlaps with the down arrow icon.
-
- 4138 When label text in radio button group is too long to fit in the
- text area, the text should be cut off one character before the
- right border line. Instead, the text runs over the edge of the
- box.
-
- 4139 If you create a multilinelistbox specifying a certain boundary
- value, and before appending the list box to the window, you
- resize it with a new boundary that is wider than it had been
- previously set, list box is drawn incorrectly. The original list
- box is filled with a white backgournd, while the area added
- after the boundary was enlarged remains gray.
-
- 4162 Assigning a new font for a widgets object does not set the font
- unless notifyChanged is used.
-
- Workaround: Set font for widgets and call
- notifyChanged.
-
- 4190 The ScrollingTextEdit example in wdgtest.sx is not working.
- Scrolling is never enabled. Any text you type in past the
- bottom of the visible boundary remains invisible for all time.
-
- ___________________________________________________________
-
- Transitions
-
- 3034 In Transitions, when transitioning a shape whose boundary is
- a clipped Stencil, the transition occurs over the clipped
- region as well.
-
- 3267 When transitioning a TextPresenter within a
- OneOfNPresenter, the text displays itself for an instant and
- then goes away before transitioning.
-
- Workaround: If the targetSelector is not used, the
- flicker does not occur.
-
- 3272 In Transitions, if the duration is set to zero, an expected error
- is not reported.
-
- 3447 In transition players, when the duration is set to a large
- integer and the scale is set to a large integer, the transition
- flickers.
-
- 3475 In the Loadable Transitions, the Dissolve class’s
- invisibleColor instance variable has no effect. The white
- background matte is still visible.
-
- 3497 In the Loadable Transitions, the Dissolve effect, which is a
- special transition class that freezes the clocks, disregards
- the duration setting.
-
- 3749 Dissolve transition does not work correctly when the
- transition player is moved in x or y.
-
- 3896 Windows only: The instance variable autoSplice defined by
- the TransitionPlayer class does not function properly.
-
- 3897 The instance variable cachedTarget.data defined by the
- TransitionPlayer class does not return the same result across
- platforms.
-
- 3901 The following transitions do not play at consistent rates:
- Checkerboard, Fan, Iris, rectIris, StripSlide, Wipe.
-
- 3904 Windows only: Getting an instance of a transition, with
- useOffscreen set to true, does not work when the target is a
- QuickTime movie.
-
- 4065 Windows only: The iris transition does not work for calliope.
- The transition, when used, never presents an iris 'look.' It just
- changes from one space completely to the other.
-
- 4181 Windows only: Invisible color on the bitmap surface,
- cachedTarget, is not rendered during a Wipe transition.
-
- ___________________________________________________________
-
- User Interface
-
- 2961 When attempting to instantiate a class that inherits from
- both TextPresenter and Pushbutton, an error message appears.
-
- 3498 Macintosh only: The origin of a notice window and a dialog
- window is not in the top left corner of the window. It is offset
- slightly inward.
-
- 3970 With the new Scrollbar, clicking on the track moves the
- thumb more than one page. It is sensitive to holding down
- the mouse button. In the old Scrollbar, when the mouse
- button is held down there is a delay, which disappeared in
- the new scrollbar. Therefore, a click will produce from two to
- five times the scrolling specified in the pageAmount.
-
- 4082 Usage note: When you specify the size of a resizable window
- on the Windows platform, the client area is less than you
- want because of the resize bars. The boundary of the window
- should be the client area, the physical window should be
- bigger.
-
- 4156 Enabling an ActuatorController instance twice throws an
- exception.
-
- Workaround: Check the value of enabled before setting
- a new value.
-
- 4188 When watching the mouse crossing events, if the presenter's
- coordinates of x or y = 0, and it is against the border or
- titlebar of a window, the MouseCrossingEvent @enter event
- occurs but not the MouseCrossingEvent @leave event.
-
- ___________________________________________________________
-
- Visual Memory
-
- 3922 The Visual Memory window leaves trails when it is moved
- during an animation.
-
-